# -*- coding: UTF-8 -*-
from Tkinter import *
from PlancheDeJeu.Joueur import *
import tkFont
#Fichier a retravailler
#http://effbot.org/tkinterbook/

#########VueVueVueVueVueVueVueVueVueVueVueVueVueVue       
    
class VueStatutJoueurs(Frame):
    def __init__(self, parent, largeur, hauteur):
        Frame.__init__(self,parent, width=largeur, height=hauteur, padx=8, pady=8)

        self.tabJoueurUpdate=[]
        self.tabJoueur=[]
        #listeJoueur n'existe pas encore, voir les autres pour faire un objet liste ayant
        ####################################
        self.tabJoueurUpdate.append(Joueur("", None,0))
        self.tabJoueurUpdate.append(Joueur("", None,0))
        self.tabJoueurUpdate.append(Joueur("", None,0))
        self.tabJoueurUpdate.append(Joueur('', None,0))
        ####################################
        
        
        self.tabJoueur = []#Éventuellement, réception des joueurs ici, faire sauter le bloc d'en dessous
        ####################################
        self.tabJoueur.append(Joueur("", None,0))
        self.tabJoueur.append(Joueur("", None,0))
        self.tabJoueur.append(Joueur("", None,0))
        self.tabJoueur.append(Joueur("", None,0))
        
        ####################################
        
        
        
        #le nom du joueur ainsi que le nombre de points
        #for i in self.listeJoueur:  #impl￩menter quand on va avoir la liste des joueurs
        Label(self, text="Nom:", font='Courier,18').grid(sticky=W, column=0, row=0)#alias
        Label(self, text="Points:", font='Courier,18').grid(sticky=W, column=0, row=1)#alias
        Label(self, text="Nb d'anses: ", font='Courier,18').grid(sticky=W, column=0, row=2)#alias
        
        self.nom0=Label(self, text=self.tabJoueur[0].nom)
        self.nom0.grid(sticky=W, column=1, row=0)#Nom1
        self.score0=Label(self, text=self.tabJoueur[0].score)
        self.score0.grid(sticky=W, column=1, row=1)#Point1
        self.anses0=Label(self, text=self.tabJoueur[0].anses)
        self.anses0.grid(sticky=W, column=1, row=2)#Anses1
        
        if len(self.tabJoueur)>1:
            self.nom1=Label(self, text=self.tabJoueur[1].nom)
            self.nom1.grid(sticky=W, column=2, row=0)#Nom2
            self.score1=Label(self, text=self.tabJoueur[1].score)
            self.score1.grid(sticky=W, column=2, row=1)#Point2
            self.anses1=Label(self, text=self.tabJoueur[1].anses)
            self.anses1.grid(sticky=W, column=2, row=2)#Anses2
            
        if len(self.tabJoueur)>2:
            self.nom2=Label(self, text=self.tabJoueur[2].nom)
            self.nom2.grid(sticky=W, column=3, row=0)#Nom3
            self.score2=Label(self, text=self.tabJoueur[2].score)
            self.score2.grid(sticky=W, column=3, row=1)#Point3
            self.anses2=Label(self, text=self.tabJoueur[2].anses)
            self.anses2.grid(sticky=W, column=3, row=2)#Anses3
        
        if len(self.tabJoueur)>3:
            self.nom3=Label(self, text=self.tabJoueur[3].nom)
            self.nom3.grid(sticky=W, column=4, row=0)#Nom4
            self.score3=Label(self, text=self.tabJoueur[3].score)
            self.score3.grid(sticky=W, column=4, row=1)#Point4
            self.anses3=Label(self, text=self.tabJoueur[3].anses)
            self.anses3.grid(sticky=W, column=4, row=2)#Anses4
        #Button(self,text="update", command=self.updateStatutPartie).grid(sticky=W, column=0, row=4)
        #Taille par défaut des colones
        self.columnconfigure(0,minsize=60)
        self.columnconfigure(1,minsize=100)
        self.columnconfigure(2,minsize=100)
        self.columnconfigure(3,minsize=100)
        self.columnconfigure(4,minsize=100)
        
        #self.pack(side=TOP, expand=1, fill=BOTH)

    def clear(self):
        self.nom0.config(text='')
        self.score0.config(text='')
        self.anses0.config(text='')
        self.nom1.config(text='')
        self.score1.config(text='')
        self.anses1.config(text='')
        self.nom2.config(text='')
        self.score2.config(text='')
        self.anses2.config(text='')
        self.nom3.config(text='')
        self.score3.config(text='')
        self.anses3.config(text='')
    
    def updateStatutPartie(self,tabJoueurs):
        self.tabJoueurUpdate = tabJoueurs
        self.clear()
        if len(self.tabJoueurUpdate)>0:
            self.nom0.config(text=self.tabJoueurUpdate[0].nom)
            self.score0.config(text=self.tabJoueurUpdate[0].score)
            self.anses0.config(text=self.tabJoueurUpdate[0].ansesTotal)

        if len(self.tabJoueurUpdate)>1:
            self.nom1.config(text=self.tabJoueurUpdate[1].nom)
            self.score1.config(text=self.tabJoueurUpdate[1].score)
            self.anses1.config(text=self.tabJoueurUpdate[1].ansesTotal)
            
        if len(self.tabJoueurUpdate)>2:
            self.nom2.config(text=self.tabJoueurUpdate[2].nom)
            self.score2.config(text=self.tabJoueurUpdate[2].score)
            self.anses2.config(text=self.tabJoueurUpdate[2].ansesTotal)
            
        if len(self.tabJoueurUpdate)>3:
            self.nom3.config(text=self.tabJoueurUpdate[3].nom)
            self.score3.config(text=self.tabJoueurUpdate[3].score)
            self.anses3.config(text=self.tabJoueurUpdate[3].ansesTotal)
       
           
class Controleur:
    
    def __init__(self):
        #root=Tk()
        #root.geometry('675x230+10+10')
        self.vue=Vue()
        self.vue.root.mainloop()
   
if __name__ == '__main__':
    # Module de tests
    controleur=Controleur()
    
    
    
    
    
